home *** CD-ROM | disk | FTP | other *** search
/ CD Pro / CD Pro.iso / IDEDRV / WINNT / VIAIDE.INF < prev   
INI File  |  1998-07-27  |  25KB  |  719 lines

  1. ;-----------------------------------------------------------------------
  2. ; OPTION TYPE
  3. ; -----------
  4. ; This identifies the Option type we are dealing with.  The different
  5. ; possible types are:
  6. ;
  7. ; COMPUTER, VIDEO, POINTER, KEYBOARD, LAYOUT, SCSI, TAPE, PRINTER, ...
  8. ;-----------------------------------------------------------------------
  9.  
  10. [Identification]
  11.     OptionType = SCSI
  12.  
  13. ;-----------------------------------------------------------------------
  14. ; LANGUAGES SUPPORTED
  15. ; -------------------
  16. ;
  17. ; The languages supported by the INF, For every language supported
  18. ; we need to have a separate text section for every displayable text
  19. ; section.
  20. ;
  21. ;-----------------------------------------------------------------------
  22.  
  23. [LanguagesSupported]
  24.     ENG
  25.  
  26.  
  27. ;-----------------------------------------------------------------------
  28. ; OPTION LIST
  29. ; -----------
  30. ; This section lists the Option key names.  These keys are locale
  31. ; independent and used to represent the option in a locale independent
  32. ; manner.
  33. ;
  34. ;-----------------------------------------------------------------------
  35.  
  36. [Options]
  37.     "VIADSK"    = viadsk
  38.  
  39. ;-----------------------------------------------------------------------
  40. ; OPTION TEXT SECTION
  41. ; -------------------
  42. ; These are text strings used to identify the option to the user.  There
  43. ; are separate sections for each language supported.  The format of the
  44. ; section name is "OptionsText" concatenated with the Language represented
  45. ; by the section.
  46. ;
  47. ;-----------------------------------------------------------------------
  48.  
  49. [OptionsTextENG]
  50.     "VIADSK"    = "VIA bus master IDE drivers"
  51.  
  52.  
  53. ;-----------------------------------------------------------------------------------------
  54. ; SCSI MINIPORT DRIVERS:
  55. ;
  56. ; Order of the information:
  57. ;
  58. ; Class driver = Type, Group, ErrorControl, Tag, EventMessageFile, TypesSupported
  59. ;
  60. ;-----------------------------------------------------------------------------------------
  61.  
  62. [MiniportDrivers]
  63.     viadsk  = !SERVICE_KERNEL_DRIVER, "SCSI Miniport", !SERVICE_ERROR_NORMAL,  17, %SystemRoot%\System32\IoLogMsg.dll , 7
  64.  
  65. ;---------------------------------------------------------------------------
  66. ; 1. Identify
  67. ;
  68. ; DESCRIPTION:   To verify that this INF deals with the same type of options
  69. ;                as we are choosing currently.
  70. ;
  71. ; INPUT:         None
  72. ;
  73. ; OUTPUT:        $($R0): STATUS: STATUS_SUCCESSFUL
  74. ;                $($R1): Option Type (COMPUTER ...)
  75. ;                $($R2): Diskette description
  76. ;---------------------------------------------------------------------------
  77.  
  78. [Identify]
  79.     ;
  80.     ;
  81.     read-syms Identification
  82.  
  83.     set Status     = STATUS_SUCCESSFUL
  84.     set Identifier = $(OptionType)
  85.     set Media      = #("Source Media Descriptions", 1, 1)
  86.  
  87.     Return $(Status) $(Identifier) $(Media)
  88.  
  89.  
  90.  
  91. ;------------------------------------------------------------------------
  92. ; 2. ReturnOptions:
  93. ;
  94. ; DESCRIPTION:   To return the option list supported by this INF and the
  95. ;                localised text list representing the options.
  96. ;
  97. ;
  98. ; INPUT:         $($0):  Language used. ( ENG | FRN | ... )
  99. ;
  100. ; OUTPUT:        $($R0): STATUS: STATUS_SUCCESSFUL |
  101. ;                                STATUS_NOLANGUAGE
  102. ;                                STATUS_FAILED
  103. ;
  104. ;                $($R1): Option List
  105. ;                $($R2): Option Text List
  106. ;------------------------------------------------------------------------
  107.  
  108. [ReturnOptions]
  109.     ;
  110.     ;
  111.     set Status        = STATUS_FAILED
  112.     set OptionList     = {}
  113.     set OptionTextList = {}
  114.  
  115.     ;
  116.     ; Check if the language requested is supported
  117.     ;
  118.     set LanguageList = ^(LanguagesSupported, 1)
  119.     Ifcontains(i) $($0) in $(LanguageList)
  120.         goto returnoptions
  121.     else
  122.         set Status = STATUS_NOLANGUAGE
  123.         goto finish_ReturnOptions
  124.     endif
  125.  
  126.     ;
  127.     ; form a list of all the options and another of the text representing
  128.     ;
  129.  
  130. returnoptions = +
  131.     set OptionList     = ^(Options, 0)
  132.     set OptionTextList = ^(OptionsText$($0), 1)
  133.     set Status         = STATUS_SUCCESSFUL
  134.  
  135. finish_ReturnOptions = +
  136.     Return $(Status) $(OptionList) $(OptionTextList)
  137.  
  138.  
  139. ;
  140. ; 3. InstallOption:
  141. ;
  142. ; FUNCTION:  To copy files representing Options
  143. ;            To configure the installed option
  144. ;            To update the registry for the installed option
  145. ;
  146. ; INPUT:     $($0):  Language to use
  147. ;            $($1):  OptionID to install
  148. ;            $($2):  SourceDirectory
  149. ;            $($3):  AddCopy  (YES | NO)
  150. ;            $($4):  DoCopy   (YES | NO)
  151. ;            $($5):  DoConfig (YES | NO)
  152. ;
  153. ; OUTPUT:    $($R0): STATUS: STATUS_SUCCESSFUL |
  154. ;                            STATUS_NOLANGUAGE |
  155. ;                            STATUS_USERCANCEL |
  156. ;                            STATUS_FAILED
  157. ;
  158.  
  159. [InstallOption]
  160.  
  161.     ;
  162.     ; Set parameters for VIA IDE
  163.     ;
  164.     set SndChIRQ        = 15
  165.     set Disk0_DMA_Time  = 120
  166.     set Disk0_PIO_Time  = 120
  167.     set Disk0_DMA_Mode  = 1
  168.     set Disk0_Blk_Size  = 16 
  169.     set Disk1_DMA_Time  = 0
  170.     set Disk1_PIO_Time  = 0
  171.     set Disk1_DMA_Mode  = 1
  172.     set Disk1_Blk_Size  = 0
  173.     set Disk2_DMA_Time  = 0
  174.     set Disk2_PIO_Time  = 0
  175.     set Disk2_DMA_Mode  = 1
  176.     set Disk2_Blk_Size  = 0
  177.     set Disk3_DMA_Time  = 0
  178.     set Disk3_PIO_Time  = 0
  179.     set Disk3_DMA_Mode  = 1
  180.     set Disk3_Blk_Size  = 0
  181.  
  182.     ;
  183.     ; Delete VIAIDE service key to modify parameters
  184.     ;
  185.     shell "utility.inf" RemoveService viaide "NO"
  186.  
  187.     ;
  188.     ; Set default values for
  189.     ;
  190.     set Status = STATUS_FAILED
  191.     set DrivesToFree = {}
  192.  
  193.     ;
  194.     ; extract parameters
  195.     ;
  196.     set Option   = $($1)
  197.     set SrcDir   = $($2)
  198.     set AddCopy  = $($3)
  199.     set DoCopy   = $($4)
  200.     set DoConfig = $($5)
  201.  
  202.     ;
  203.     ; Check if the language requested is supported
  204.     ;
  205.     set LanguageList = ^(LanguagesSupported, 1)
  206.     Ifcontains(i) $($0) in $(LanguageList)
  207.     else
  208.         set Status = STATUS_NOLANGUAGE
  209.         goto finish_InstallOption
  210.     endif
  211.     read-syms Strings$($0)
  212.  
  213.     ;
  214.     ; check to see if Option is supported.
  215.     ;
  216.  
  217.     set OptionList = ^(Options, 0)
  218.     ifcontains $(Option) in $(OptionList)
  219.     else
  220.         Debug-Output "SCSI.INF: SCSI option is not supported."
  221.         goto finish_InstallOption
  222.     endif
  223.     set OptionList = ""
  224.  
  225.     ;
  226.     ; Option has been defined already
  227.     ;
  228.  
  229.     set MiniportDriver   =   #(Options,         $(Option),         1)
  230.     set Type             = $(#(MiniportDrivers, $(MiniportDriver), 1))
  231.     set Group            =   #(MiniportDrivers, $(MiniportDriver), 2)
  232.     set ErrorControl     = $(#(MiniportDrivers, $(MiniportDriver), 3))
  233.     set Tag              =   #(MiniportDrivers, $(MiniportDriver), 4)
  234.     set EventMessageFile =   #(MiniportDrivers, $(MiniportDriver), 5)
  235.     set TypesSupported   =   #(MiniportDrivers, $(MiniportDriver), 6)
  236.  
  237.     set Start            =   $(!SERVICE_BOOT_START)
  238.  
  239. installtheoption = +
  240.  
  241.     ;
  242.     ; Code to add files to copy list
  243.     ;
  244.  
  245. ;hc01_s
  246.     set AddCopy = NO
  247. ;hc01_e
  248.  
  249.     ifstr(i) $(AddCopy) == "YES"
  250.         set DoActualCopy = NO
  251.         set FileToCheck = #(Files-ScsiMiniportDrivers, $(MiniportDriver), 2)
  252.         LibraryProcedure STATUS,$(!LIBHANDLE),CheckFileExistance $(!STF_WINDOWSSYSPATH)"\drivers\"$(FileToCheck)
  253.         ifstr(i) $(STATUS) == NO
  254.             set DoActualCopy = YES
  255.         endif
  256.  
  257.         ifstr(i) $(DoActualCopy) == NO
  258.             shell "subroutn.inf" DriversExist $($0) $(String1)
  259.             ifint $($ShellCode) != $(!SHELL_CODE_OK)
  260.                 Debug-Output "SCSI.INF: shelling DriversExist failed"
  261.                 goto finish_InstallOption
  262.             endif
  263.  
  264.             ifstr(i) $($R0) == STATUS_CURRENT
  265.             else-ifstr(i) $($R0) == STATUS_NEW
  266.                 set DoActualCopy = YES
  267.             else-ifstr(i) $($R0) == STATUS_USERCANCEL
  268.                 Debug-Output "SCSI.INF: User cancelled SCSI installation"
  269.                 goto finish_InstallOption
  270.             else
  271.                 Debug-Output "SCSI.INF: Error reported in DriversExist routine in SUBROUTN.